"""
Los filtros que determina
que van ha ser con el contenido de
las paginas
"""



class FilterAdmin:
    """
    Administrador de filtros
    """

    def __init__(self):
        self.filters = []
        self.filters_actived = []
    
    def add(self,obj):
        self.filters.append(obj)
        
    def get_filters(self):
        return self.filters
        
    def activate(self,obj):
        obj.active = True
            
    def get_activated_filters(self):
        return self.filters_actived



class Filter:
    """
    Clase general para los filtros
    """

    #que tipo de contenido se ejecuta el filtro
    content_type = "text/html"
    #las paginas donde se utiliza filtro
    #expresion regular
    includes = []

    #descripcion del filtro
    description = ""
    #nombre author del filtro
    author = ""
    #si esta activo, para ser llamado
    active = False

    def process(self, data):
        """
        funcion que procesa la informacion
        y retorna los cambios
        """
        return None
    
